import 'package:loading_more_list/loading_more_list.dart';

// /Users/liyao/Library/Developer/CoreSimulator/Devices/563D1BD6-E39E-4BE4-BB01-71E80862D604/data/Containers/Data/Application/14482766-4474-4712-946E-7129926622E3/tmp/.video/1678863497.364620_IMG_0010.MP4

enum WechatMessageType { text, voice, image, video }

class WechatMessage {
  final String text;
  final bool isSelf;
  final int time;
  final WechatMessageType wechatMessageType;
  final String? localPath;
  final int? duration;
  final int? width;
  final int? height;

  // 封面图
  final String? coverUrl;

  WechatMessage(this.text, this.isSelf, this.time, this.wechatMessageType,
      {this.localPath, this.duration, this.width, this.height, this.coverUrl});
}

class WechatMessageRepository extends LoadingMoreBase<WechatMessage> {
  int pageindex = 1;
  bool _hasMore = true;

  @override
  bool get hasMore => _hasMore;

  @override
  Future<bool> loadData([bool isloadMoreAction = false]) async {
    if (pageindex == 1) {
      await Future.delayed(const Duration(milliseconds: 300));
      insert(
          0,
          WechatMessage("你怎么老是这样啊！我一直在听你说话，可你从来不肯倾听我的想法！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("什么？我没有听你说话吗？你自己也没跟我说啊！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你就不能主动问问我吗？你总是只关心你自己的事情，完全不管其他人的感受！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("那是因为你从来不跟我说！你总是自己一个人默默地处理问题，我又怎么知道你要说什么呢？", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你这个人真的太自私了。我从来没有见过像你这样的人。", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你才是自私的人呢！你总是把自己的想法当成唯一正确的答案，根本不考虑我的看法！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你知道吗？我们之间的问题就在于你总是认为自己是对的，而我只能被动地接受你的决定！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("那是因为你总是推脱责任，你从来不愿意承担责任！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你怎么可以这样说我呢？我一直在努力做到最好，可你从来不理解我！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("我也一直在尽力理解你啊！可你从来不肯跟我交流，你就是一个自以为是的人！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("我真的够了！我们之间的问题永远都解决不了！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage(
              "你怎么可以这样说，我们之间的问题只是沟通不畅而已。如果你肯跟我好好谈谈，我们一定会有解决的办法",
              false,
              DateTime.now().millisecondsSinceEpoch,
              WechatMessageType.text));
      insert(
          0,
          WechatMessage("什么办法？我们到现在还没有解决任何一个问题！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage(
              "我们可以试着换位思考，理解对方的想法和感受，共同探讨解决方法。我们不能总是吵架，必须要找到解决问题的办法。",
              false,
              DateTime.now().millisecondsSinceEpoch,
              WechatMessageType.text));
      insert(
          0,
          WechatMessage("你说得轻巧，但是你真正做到了吗？你从来都只是想着自己，根本不考虑我的感受！", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你怎么可以这样说！我一直都在为我们的关系努力着，可你从来不肯给我机会！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("好，既然你觉得这是我的错，那我就不说话了。", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你这个人真的太固执了，无论我怎么解释你都听不进去！", false,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你也不用费心了，我已经厌倦了这种互相指责的局面。", true,
              DateTime.now().millisecondsSinceEpoch, WechatMessageType.text));
      insert(
          0,
          WechatMessage("你……", false, DateTime.now().millisecondsSinceEpoch,
              WechatMessageType.text));
      pageindex++;
      _hasMore = false;
      return true;
    }
    return false;
  }
}
